/*
1. 通过结构体成员的地址获取结构的地址
struct s {  
    int i;  
    char c;  
    double d;  
    char a[];  
};  

#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)  

把地址0强制转化为type的类型，然后取member变量的地址，再转为size_t就是偏移量了，
size_t其实就是unsigned long类型









































*/